In order to evaluate existing web site organization and improve web site design, there is a need to understand how users access and use hypertext resources. Current methods for monitoring the use of web resources, however, either require the modification of the client browser or are limited to tracking access to a single server. Modifying all client browsers is an expensive and impractical solution since all existing browsers would have to be modified. Present approaches to monitoring web browsing activity, therefore, have focused on the server. Although these techniques permit a server to record all requests which are directed to that particular server, once the user has browsed to another site, information about the browsing activity of the user is not available. Because a browsing session typically involves jumping between many different servers, no single server is able to accurately determine from its log what any given user has done. One possible solution is for sites to collaborate and attempt to determine user activity from a combination of their HTTP log files. This solution is impractical, however, and would still result in a very incomplete record of a user's browsing session. Another possible solution is to require that the client use a proxy server, as in the case of clients behind an internet firewall. This solution, however, requires special proxy servers and requires that the users manually configure their browsers to a particular proxy server to turn on tracking and then manually change the configuration to turn off tracking.